// 导入dish的module
const dishModel = require('../db/dish')
const xy = require('../utils/xy')
const writeErr = require('../utils/writeErr')

module.exports = {
    // 获取所有商品
    async getall(req, resp) {
        try {
            let docs = await dishModel.find()
            xy(resp, 200, '商品数据获取成功！', {
                dishes: docs
            })
        } catch (err) {
            writeErr(err)
            xy(resp, 505, '商品数据获取失败！')
        }
    },

    // 根据关键字获取对应的商品
    async search(req, resp) {
        // 获取传递过来的关键字
        let { keywords } = req.params
        // 根据关键字获取所有商品
        try {
            let docs = await dishModel.find({ name: new RegExp(keywords) })
            xy(resp, 200, '商品数据获取成功！', {
                dishes: docs
            })
        } catch (err) {
            writeErr(err)
            xy(resp, 505, '商品数据获取失败！')
        }
    },

    // 获取某个分类下的所有商品
    async catDish(req, resp) {
        let { catname } = req.params
        try {
            let docs = await dishModel.find({ catname })
            xy(resp, 200, '商品数据获取成功！', {
                dishes: docs
            })
        } catch (err) {
            writeErr(err)
            xy(resp, 505, '商品数据获取失败！')
        }
    }
}